CommandManager
CommandManager​类的主要作用是管理游戏中的指令系统,包括注册指令、解析玩家输入、执行指令和提供帮助信息。通过这个类,可以方便地添加新的指令和子指令,以及在玩家输入时触发相应的回调函数。
成员变量
成员变量 描述
private static commands: { [key: string]: ICommand } 一个私有静态对象,用于存储注册的命令及其相关信息。
成员函数
指令注册与管理
成员函数 描述
constructor() 构造函数,目前为空,不执行任何操作。
static registerCommand(name: string, description: string, callback: (player: SuperPlayer, args: string[]) => void, isOpOnly: boolean): void 注册一个指令,包括名称、描述、回调函数和是否仅限操作员使用。
static registerSubCommand(father: string, name: string, description: string, callback: (player: SuperPlayer, args: string[]) => void, isOpOnly: boolean): void 注册一个子指令,包括父指令名称、子指令名称、描述、回调函数和是否仅限操作员使用。
指令执行
成员函数 描述
static Input(player: SuperPlayer, event: ChatSendBeforeEvent): void 处理玩家的聊天输入,如果包含指令,则执行相应的指令。
static executeCommand(player: SuperPlayer, name: string, args: string[]): void 执行指定的指令,如果指令存在。
static executeSubCommand(player: SuperPlayer, father: string, name: string, args: string[]): void 执行指定的子指令,如果子指令存在。
帮助信息
成员函数 描述
static showHelp(player: SuperPlayer): void 向玩家显示可用的指令列表及其描述。
命令解析
成员函数 描述
static parseCommand(command: string): string[] 解析命令字符串,将其分割为指令名称和参数数组。